*/
interruptible_sleep_on_timeout(&tp->wait_q, 100);
}
- xenbus_switch_state(dev, XenbusStateClosed);
+ xenbus_switch_state(dev, XenbusStateClosing);
if (atomic_read(&tp->tx_busy)) {
/*
return 0;
}
-static void __tpmif_disconnect_complete(void *arg)
+void tpmif_disconnect_complete(tpmif_t *tpmif)
{
- tpmif_t *tpmif = (tpmif_t *) arg;
-
if (tpmif->irq)
unbind_from_irqhandler(tpmif->irq, tpmif);
free_tpmif(tpmif);
}
-void tpmif_disconnect_complete(tpmif_t * tpmif)
-{
- INIT_WORK(&tpmif->work, __tpmif_disconnect_complete, (void *)tpmif);
- schedule_work(&tpmif->work);
-}
-
void __init tpmif_interface_init(void)
{
tpmif_cachep = kmem_cache_create("tpmif_cache", sizeof (tpmif_t),